<?php

declare(strict_types=1);

use Core\Exception\Handler\AppExceptionHandler;
use Core\Exception\Handler\CommonExceptionHandler;
use Core\Exception\Handler\ValidationExceptionHandler;
use Hyperf\HttpServer\Exception\Handler\HttpExceptionHandler;

/**
 * 异常处理器 - 配置.
 *
 * 注意：每个异常处理器配置的顺序决定了异常在处理器间传递的顺序
 * @see https://hyperf.wiki/3.1/#/zh-cn/exception-handler
 */
return [
    'handler' => [
        'http' => [
            HttpExceptionHandler::class,        // Http - 异常处理器
            ValidationExceptionHandler::class,  // 验证 - 异常处理器
            CommonExceptionHandler::class,      // 公共 - 自定义异常处理器
            AppExceptionHandler::class,         // 兜底 - 异常处理器
        ],
    ],
];
